package com.mariners.afpositioner.data;

/**
 * 
 * Classe que reprensenta o jogador
 * 
 * @author Filipe Medeiros
 * 
 */

public class Jogador {

	private double altura;
	private double peso;
	private int forcaVelocidade;
	private int defesaAtaque;

	public Jogador(double altura, double peso, int forcaVelocidade, int defesaAtaque) {
		super();
		this.altura = altura;
		this.peso = peso;
		this.forcaVelocidade = forcaVelocidade;
		this.defesaAtaque = defesaAtaque;
	}

	public String calculaPosicao() {
		double imc = this.calculaIMC();
		if (imc < 18.5) { // WR/CB/S
			if (this.forcaVelocidade == 0) {// TE/S
				if (this.defesaAtaque == 1) {// TE
					return "TE";
				} else {// S
					return "S";
				}
			} else { // WR/CB
				if (this.defesaAtaque == 1) {// WR
					return "WR";
				} else {// CB
					return "CB";
				}
			}
		} else if (imc > 18.5 && imc < 25) {// FB/RB/MLB/OLB
			if (this.forcaVelocidade == 0) {// FB/MLB
				if (this.defesaAtaque == 1) {// FB
					return "FB";
				} else {// MLB
					return "MLB";
				}
			} else { // RB/OLB
				if (this.defesaAtaque == 1) {// RB
					return "RB";
				} else {// LB
					return "OLB";
				}
			}
		} else {// OL/DL
			if (this.forcaVelocidade == 0) {// OT/DT
				if (this.defesaAtaque == 1) {// OT
					return "OT";
				} else {// DT
					return "DT";
				}
			} else { // G/DE
				if (this.defesaAtaque == 1) {// G
					return "G";
				} else {// DE
					return "DE";
				}
			}
		}
	}

	private double calculaIMC() {
		return Math.pow(this.altura, 2);
	}

	public double getAltura() {
		return altura;
	}

	public void setAltura(double altura) {
		this.altura = altura;
	}

	public double getPeso() {
		return peso;
	}

	public void setPeso(double peso) {
		this.peso = peso;
	}

	public int getForcaVelocidade() {
		return forcaVelocidade;
	}

	public void setForcaVelocidade(int forcaVelocidade) {
		this.forcaVelocidade = forcaVelocidade;
	}

	public int getDefesaAtaque() {
		return defesaAtaque;
	}

	public void setDefesaAtaque(int defesaAtaque) {
		this.defesaAtaque = defesaAtaque;
	}

}
